package com.sjy.project.ent.user.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.sjy.framework.aspectj.lang.annotation.Excel;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.sjy.framework.web.domain.BaseEntity;
import com.sjy.project.ent.data.domain.EntData;

/**
 * 企业用户信息对象 sys_ent_user
 * 
 * @author ljb
 * @date 2022-06-04
 */
@ApiModel(value="EntUser对象", description="企业用户信息")
public class EntUser extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 编号 */
    @ApiModelProperty(value = "${comment}")
    private Long id;

    /** 用户名/账号 */
    @Excel(name = "用户名/账号")
    @ApiModelProperty(value = "用户名/账号")
    private String userName;

    /** 密码 */
    @Excel(name = "密码")
    @ApiModelProperty(value = "密码")
    private String password;

    /** 姓名 */
    @Excel(name = "姓名")
    @ApiModelProperty(value = "姓名")
    private String realName;

    /** 乡镇账号：所属乡镇 */
    @Excel(name = "乡镇账号：所属乡镇")
    @ApiModelProperty(value = "乡镇账号：所属乡镇")
    private String town;

    /** 手机号 */
    @Excel(name = "手机号")
    @ApiModelProperty(value = "手机号")
    private String mobile;

    /** 县级账号：政务单位名称 */
    @Excel(name = "县级账号：政务单位名称")
    @ApiModelProperty(value = "县级账号：政务单位名称")
    private String name;

    /** 统代 */
    @Excel(name = "统代")
    @ApiModelProperty(value = "统代")
    private String creditCode;

    /** 职位 */
    @Excel(name = "职位")
    @ApiModelProperty(value = "职位")
    private String position;

    /** 角色id */
    @Excel(name = "角色id")
    @ApiModelProperty(value = "角色id")
    private Long roleId;

    /** 状态:1可用,0禁用 */
    @Excel(name = "状态:1可用,0禁用")
    @ApiModelProperty(value = "状态:1可用,0禁用")
    private Integer status;

    /** 0为首次 1为不是首次登录 */
    @Excel(name = "0为首次 1为不是首次登录")
    @ApiModelProperty(value = "0为首次 1为不是首次登录")
    private Integer firstLogin;

    /** 单位级别（用户） 1-县级政务用户 2-乡镇街道政务用户 3-企业用户 */
    @Excel(name = "单位级别", readConverterExp = "用=户")
    @ApiModelProperty(value = "单位级别")
    private Long unitLevel;

    /** 最后登录时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "最后登录时间", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty(value = "最后登录时间")
    private Date lastLoginTime;

    /** oss图片 */
    @Excel(name = "oss图片")
    @ApiModelProperty(value = "oss图片")
    private String ossUrl;

    /** 是否是管理员:0-否,1-是 */
    @Excel(name = "是否是管理员:0-否,1-是")
    @ApiModelProperty(value = "是否是管理员:0-否,1-是")
    private Integer isAdmin;

    /** 钉钉userId */
    @Excel(name = "钉钉userId")
    @ApiModelProperty(value = "钉钉userId")
    private String dingUserId;

    /** 是否审核 */
    @Excel(name = "是否审核")
    @ApiModelProperty(value = "是否审核")
    private Integer isChecked;

    /** 组织架构id */
    @Excel(name = "组织架构id")
    @ApiModelProperty(value = "组织架构id")
    private Long organizationId;

    /** 企业名称 */
    @Excel(name = "企业名称")
    @ApiModelProperty(value = "企业名称")
    private String entName;

    /** 邮箱 */
    @Excel(name = "邮箱")
    @ApiModelProperty(value = "邮箱")
    private String mail;

    /** 法人名称 */
    @Excel(name = "法人名称")
    @ApiModelProperty(value = "法人名称")
    private String frName;

    /** 联系人 */
    @Excel(name = "联系人")
    @ApiModelProperty(value = "联系人")
    private String contactName;

    private String token;
    
    private EntData entData;
    
    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }
    public void setUserName(String userName)
    {
        this.userName = userName;
    }

    public String getUserName()
    {
        return userName;
    }
    public void setPassword(String password)
    {
        this.password = password;
    }

    public String getPassword()
    {
        return password;
    }
    public void setRealName(String realName)
    {
        this.realName = realName;
    }

    public String getRealName()
    {
        return realName;
    }
    public void setTown(String town)
    {
        this.town = town;
    }

    public String getTown()
    {
        return town;
    }
    public void setMobile(String mobile)
    {
        this.mobile = mobile;
    }

    public String getMobile()
    {
        return mobile;
    }
    public void setName(String name)
    {
        this.name = name;
    }

    public String getName()
    {
        return name;
    }
    public void setCreditCode(String creditCode)
    {
        this.creditCode = creditCode;
    }

    public String getCreditCode()
    {
        return creditCode;
    }
    public void setPosition(String position)
    {
        this.position = position;
    }

    public String getPosition()
    {
        return position;
    }
    public void setRoleId(Long roleId)
    {
        this.roleId = roleId;
    }

    public Long getRoleId()
    {
        return roleId;
    }
    public void setStatus(Integer status)
    {
        this.status = status;
    }

    public Integer getStatus()
    {
        return status;
    }
    public void setFirstLogin(Integer firstLogin)
    {
        this.firstLogin = firstLogin;
    }

    public Integer getFirstLogin()
    {
        return firstLogin;
    }
    public void setUnitLevel(Long unitLevel)
    {
        this.unitLevel = unitLevel;
    }

    public Long getUnitLevel()
    {
        return unitLevel;
    }
    public void setLastLoginTime(Date lastLoginTime)
    {
        this.lastLoginTime = lastLoginTime;
    }

    public Date getLastLoginTime()
    {
        return lastLoginTime;
    }
    public void setOssUrl(String ossUrl)
    {
        this.ossUrl = ossUrl;
    }

    public String getOssUrl()
    {
        return ossUrl;
    }
    public void setIsAdmin(Integer isAdmin)
    {
        this.isAdmin = isAdmin;
    }

    public Integer getIsAdmin()
    {
        return isAdmin;
    }
    public void setDingUserId(String dingUserId)
    {
        this.dingUserId = dingUserId;
    }

    public String getDingUserId()
    {
        return dingUserId;
    }
    public void setIsChecked(Integer isChecked)
    {
        this.isChecked = isChecked;
    }

    public Integer getIsChecked()
    {
        return isChecked;
    }
    public void setOrganizationId(Long organizationId)
    {
        this.organizationId = organizationId;
    }

    public Long getOrganizationId()
    {
        return organizationId;
    }
    public void setEntName(String entName)
    {
        this.entName = entName;
    }

    public String getEntName()
    {
        return entName;
    }
    public void setMail(String mail)
    {
        this.mail = mail;
    }

    public String getMail()
    {
        return mail;
    }
    public void setFrName(String frName)
    {
        this.frName = frName;
    }

    public String getFrName()
    {
        return frName;
    }
    public void setContactName(String contactName)
    {
        this.contactName = contactName;
    }

    public String getContactName()
    {
        return contactName;
    }

    public String getToken() {
		return token;
	}

	public void setToken(String token) {
		this.token = token;
	}

	public EntData getEntData() {
		return entData;
	}

	public void setEntData(EntData entData) {
		this.entData = entData;
	}

	@Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("userName", getUserName())
            .append("password", getPassword())
            .append("realName", getRealName())
            .append("town", getTown())
            .append("mobile", getMobile())
            .append("name", getName())
            .append("creditCode", getCreditCode())
            .append("position", getPosition())
            .append("roleId", getRoleId())
            .append("status", getStatus())
            .append("firstLogin", getFirstLogin())
            .append("unitLevel", getUnitLevel())
            .append("lastLoginTime", getLastLoginTime())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .append("ossUrl", getOssUrl())
            .append("isAdmin", getIsAdmin())
            .append("dingUserId", getDingUserId())
            .append("isChecked", getIsChecked())
            .append("organizationId", getOrganizationId())
            .append("entName", getEntName())
            .append("mail", getMail())
            .append("frName", getFrName())
            .append("contactName", getContactName())
            .toString();
    }
}
